package com.itany.netclass.service;

import com.itany.mvc.util.CommonsMultipartFile;
import com.itany.netclass.entity.Course;
import com.itany.netclass.entity.CourseType;
import com.itany.netclass.entity.User;
import com.itany.netclass.exception.*;

import javax.servlet.http.HttpSession;
import java.util.List;

/**
 * Author:sjy@itany.com
 * Date:21-10-14 下午6:35
 * Version:1.0-SNAPSHOT
 * Description:
 */
public interface CourseService {
    public List<CourseType> findAllType(User user) throws NoLoginException, ServiceException;

    public List<Course> findAllCourse() throws ServiceException;

    public void jianchaCourseName(String courseId, String courseName, String courseType) throws NullSringException, CourseExistException, ServiceException;

    public void jianchaCourseInfo(String courseInfo) throws NullSringException, ServiceException;

    public void jianchaCourseAuthor(String courseAuthor) throws NullSringException, ServiceException;

    public void jianchaCourseTuijian(String courseTuijian) throws NullSringException, ServiceException;

    public void jianchaCourseType(String courseId, String courseType, String courseName) throws NullSringException, CourseExistException, ServiceException;

    public void jianchaCourseFile(String courseId, HttpSession session, List<CommonsMultipartFile> list) throws NullSringException, TypeExistException, ServiceException;

    public void addCourse(String courseId, String courseName, String courseInfo, String author, String tuijian, String type, List<CommonsMultipartFile> list, HttpSession session) throws Exception;

    public Course findCourseById(String id) throws ServiceException;

    public void modifyCourseById(String courseId, String courseName, String courseInfo, String author, String tuijian, String type, HttpSession session, List<CommonsMultipartFile> list) throws Exception;

    public void yongCourseById(String courseId, String status) throws Exception;

    public List<Course> sreachCourseByForm(String author, String courseName, String status, String type, String kaishitime, String jieshutime) throws ServiceException, NullSringException;
}
